package com.smart.service.util.seteB;

import com.smart.service.util.UtilCard;
import com.smart.service.util.exception.CardException;

public class ValidatorSmart extends CardValidator7B {

	@Override
	public boolean validateNumber(String formatado) throws CardException {
		
		// tamanho 10, todos os digitos iguais a 2 ou 4
		if(formatado.length() == 10){
			int digito = Integer.parseInt(formatado.substring(0, 1));
			if(digito == 2 || digito == 4){
				for (int i = 1; i < formatado.length(); i++) {
					if(formatado.charAt(i) != formatado.charAt(i - 1)){
						throw new CardException(UtilCard.CARTAO_ERRO);
					}
				}
			}else{
				throw new CardException(UtilCard.CARTAO_ERRO);
			}
			
		}else {
			throw new CardException(UtilCard.CARTAO_ERRO);
		}
		
		return true;
	}

}
